#include <kfbximporter.h>

Normally this class is used as is. But for very special needs a user can override Initialize() for special purpose.
An importer will select the appropriate reader to a particular file. Ex: When an importer must import an FBX 7 file, the importer will ask for all registered readers if an FBX 7 file reader is available, then if a reader is found, the importer will create the specialized FBX 7 reader and read the file. This way, an importer can "read" many different type of files like FBX 5/6/7, 3DS, Obj, Dxf, Collada, etc.
ex: // create a SdkManager KFbxSdkManager *lSdkManager = KFbxSdkManager::Create(); // create an IOSettings object KFbxIOSettings * ios = KFbxIOSettings::Create(lSdkManager, IOSROOT ); // set some IOSettings options ios->SetBoolProp(IMP_FBX_MATERIAL, true); ios->SetBoolProp(IMP_FBX_TEXTURE, true); // create an empty scene KFbxScene* lScene = KFbxScene::Create(lSdkManager,""); // Create an importer. KFbxImporter* lImporter = KFbxImporter::Create(lSdkManager, ""); // Initialize the importer by providing a filename and the IOSettings to use lImporter->Initialize("C:\\myfile.fbx", -1, ios); // Import the scene. lImporter->Import(lScene); // Destroy the importer. lImporter->Destroy();
Definition at line 139 of file kfbximporter.h.
Import Functions | 
|
| enum | EStreamOptionsGeneration
{ eSTREAMOPTIONS_PARSE_FILE, eSTREAMOPTIONS_FAST, eSTREAMOPTIONS_COUNT }  | 
| Stream options identifiers. More... | 
|
| virtual bool | Initialize (const char *pFileName, const int pFileFormat=-1, KFbxIOSettings *pIOSettings=NULL) | 
| Initialize object.  | 
|
| virtual bool | Initialize (KFile *pFile, const int pFileFormat=-1, KFbxIOSettings *pIOSettings=NULL) | 
| Initialize object.  | 
|
| virtual KFile * | GetFile () | 
| Get the file, if any.  | 
|
| void | GetFileVersion (int &pMajor, int &pMinor, int &pRevision) | 
| Get the FBX version number of the FBX file.
 | 
|
| bool | GetDefaultRenderResolution (KString &pCamName, KString &pResolutionMode, double &pW, double &pH) | 
| Get the default rendering resolution if
present in the file header.  | 
|
| KFbxFileHeaderInfo * | GetFileHeaderInfo () | 
| Get the complete file header information.
 | 
|
| bool | GetImportOptions (EStreamOptionsGeneration pStreamOptionsGeneration=eSTREAMOPTIONS_PARSE_FILE) | 
| Read the currently opened file header to
retrieve information related to takes.  | 
|
| bool | GetImportOptions (KFbx *pFbxObject) | 
| Read the currently opened file header to
retrieve information related to takes.  | 
|
| bool | Import (KFbxDocument *pDocument, bool pNonBlocking=false) | 
| Import the currently opened file into a
scene.  | 
|
| bool | IsImporting (bool &pImportResult) | 
| Check if the importer is currently
importing.  | 
|
| float | GetProgress (KString &pStatus) | 
| Get the progress status in non-blocking
mode.  | 
|
| void | SetProgressCallback (KFbxProgressCallback pHandler) | 
| Register a callback function for progress
reporting in single thread mode.  | 
|
| KFbxIOSettings * | GetIOSettings () | 
| Access to a IOSettings object.  | 
|
| void | SetIOSettings (KFbxIOSettings *pIOSettings) | 
| Set the IOSettings pointer.  | 
|
| void | SetPassword (char *pPassword) | 
| Set the password.  | 
|
Animation Stack Description Access | 
|
  | 
|
| K_DEPRECATED int | GetTakeCount () | 
| Get the number of available takes in the
file.  | 
|
| int | GetAnimStackCount () | 
| Get the number of available animation stacks
in the file.  | 
|
| KFbxTakeInfo * | GetTakeInfo (int pIndex) | 
| Get the take information about an available
take.  | 
|
| K_DEPRECATED char * | GetCurrentTakeName () | 
| Return the current take name.  | 
|
| KString | GetActiveAnimStackName () | 
| Return the active animation stack name.
 | 
|
Scene Description Access | 
|
| KFbxDocumentInfo * | GetSceneInfo () | 
| Get the scene info.  | 
|
File Format | 
|
| int | GetFileFormat () | 
| Returns the index of the reader (FbxReader)
associated with the file format.  | 
|
| bool | IsFBX () | 
Public Member Functions | 
|
| void | ParseForGlobalSettings (bool pState) | 
| Set a flag to parse or not the
GlobalSettings data section when the importer is initialized.
 | 
|
| void | ParseForStatistics (bool pState) | 
| Set a flag to parse or not in a FBX file the
Summary data section or the Definition data section when the
importer is initialized.  | 
|
| bool | GetAxisInfo (KFbxAxisSystem *pAxisSystem, KFbxSystemUnit *pSystemUnits) | 
| Get FBX file Axis information and FBX file
System units.  | 
|
| bool | GetStatistics (KFbxStatistics *pStatistics) | 
| Get FBX file Statistics informations.
 | 
|
Stream options identifiers.
Definition at line 204 of file kfbximporter.h.
| virtual bool Initialize | ( | const char * | pFileName, | |
| const int | pFileFormat = -1, | 
|||
| KFbxIOSettings * | pIOSettings = NULL | 
|||
| ) | [virtual] | 
Initialize object.
| pFileName | Name of file to access. | |
| pFileFormat | file format identifier User does not need to specify it by default. if not specified, plugin will detect the file format according to file suffix automatically. | |
| pIOSettings | client IOSettings, if not specified, a default IOSettings will be created | 
true on success, false
otherwise.You do not need to give the pFileFormat if the suffix of pFileName is recognized
| virtual bool Initialize | ( | KFile * | pFile, | |
| const int | pFileFormat = -1, | 
|||
| KFbxIOSettings * | pIOSettings = NULL | 
|||
| ) | [virtual] | 
Initialize object.
| pFile | file to access. Ownership is transfered to this object. | |
| pFileFormat | file format identifier User does not need to specify it by default. if not specified, plugin will detect the file format according to file suffix automatically. | |
| pIOSettings | client IOSettings, if not specified, a default IOSettings will be created | 
true on success, false
otherwise.You do not need to give the pFileFormat if the suffix of pFileName is recognized
| virtual KFile* GetFile | ( | ) | [virtual] | 
Get the file, if any.
Get the FBX version number of the FBX file.
FBX version numbers start at 5.0.0.
| pMajor | Version major number. | |
| pMinor | Version minor number. | |
| pRevision | Version revision number. | 
| bool GetDefaultRenderResolution | ( | KString & | pCamName, | |
| KString & | pResolutionMode, | |||
| double & | pW, | |||
| double & | pH | |||
| ) | 
Get the default rendering resolution if present in the file header.
| pCamName | Returned name of the camera. | |
| pResolutionMode | Returned resolution mode. | |
| pW | Returned width. | |
| pH | Returned height. | 
true if the default rendering settings are defined
in the file, otherwise returns false with empty
parameters.| KFbxFileHeaderInfo* GetFileHeaderInfo | ( | ) | 
Get the complete file header information.
| bool GetImportOptions | ( | EStreamOptionsGeneration | pStreamOptionsGeneration =
eSTREAMOPTIONS_PARSE_FILE | 
) | 
Read the currently opened file header to retrieve information related to takes.
| pStreamOptionsGeneration | Stream options identifier. | 
true on success, false
otherwise.| bool GetImportOptions | ( | KFbx * | pFbxObject | ) | 
Read the currently opened file header to retrieve information related to takes.
| pFbxObject | Target FBX file. | 
true on success, false
otherwise.| bool Import | ( | KFbxDocument * | pDocument, | |
| bool | pNonBlocking =
false | 
|||
| ) | 
Import the currently opened file into a scene.
| pDocument | Document to fill with file content. | |
| pNonBlocking | If true, the import process will be executed in a new thread, allowing it to be non-blocking. To determine if the import finished, refer to the function IsImporting(). | 
true on success, false
otherwise.| bool IsImporting | ( | bool & | pImportResult | ) | 
Check if the importer is currently importing.
| pImportResult | This parameter, after the import finished, will contain the result of the import success or failure. | 
| float GetProgress | ( | KString & | pStatus | ) | 
Get the progress status in non-blocking mode.
| pStatus | KString reference to retrieve current status | 
| void SetProgressCallback | ( | KFbxProgressCallback | pHandler | ) | 
Register a callback function for progress reporting in single thread mode.
| pHandler | Pointer of the callback function | 
| KFbxIOSettings* GetIOSettings | ( | ) | 
Access to a IOSettings object.
NULL if
the object has not been allocated.| void SetIOSettings | ( | KFbxIOSettings * | pIOSettings | ) | 
Set the IOSettings pointer.
| pIOSettings | Point to a KFbxIOSettings object. | 
| void SetPassword | ( | char * | pPassword | ) | 
Set the password.
All subsequently imported files are opened with the given password.
| pPassword | Password string. | 
| K_DEPRECATED int GetTakeCount | ( | ) | 
Get the number of available takes in the file.
This method is deprecated an should be replaced with calls to GetAnimStackCount().
| int GetAnimStackCount | ( | ) | 
Get the number of available animation stacks in the file.
| KFbxTakeInfo* GetTakeInfo | ( | int | pIndex | ) | 
Get the take information about an available take.
Use the returned reference to a KFbxTakeInfo object to set whether the indexed take is imported.
| pIndex | Index of the requested take. | 
NULL if function failed.| K_DEPRECATED char* GetCurrentTakeName | ( | ) | 
Return the current take name.
This method is deprecated an should be replaced with calls to GetActiveAnimStackName().
| KString GetActiveAnimStackName | ( | ) | 
Return the active animation stack name.
| KFbxDocumentInfo* GetSceneInfo | ( | ) | 
Get the scene info.
NULL if no scene
information is available in the file.| int GetFileFormat | ( | ) | 
Returns the index of the reader (FbxReader) associated with the file format.
This index is considered the identifier of the file format. The array of registered readers can't be retrieved.
| bool IsFBX | ( | ) | 
true if the file format is a recognized FBX
format.| void ParseForGlobalSettings | ( | bool | pState | ) | 
Set a flag to parse or not the GlobalSettings data section when the importer is initialized.
| pState | true or false | 
| void ParseForStatistics | ( | bool | pState | ) | 
Set a flag to parse or not in a FBX file the Summary data section or the Definition data section when the importer is initialized.
| pState | true or false | 
| bool GetAxisInfo | ( | KFbxAxisSystem * | pAxisSystem, | |
| KFbxSystemUnit * | pSystemUnits | |||
| ) | 
Get FBX file Axis information and FBX file System units.
| pAxisSystem | pointer to a KFbxAxisSystem object | |
| pSystemUnits | pointer to a KFbxSystemUnit object | 
true on success, false
otherwise.| bool GetStatistics | ( | KFbxStatistics * | pStatistics | ) | 
Get FBX file Statistics informations.
Ex: Number of Models, Characters, Textures, Materials, etc.
| pStatistics | pointer to a KFbxStatistics object | 
true on success, false
otherwise.